<?xml version="1.0"?>

<xsl:stylesheet version="1.0"
	xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
	xmlns:xalan="http://xml.apache.org/xalan">

  <xsl:variable name="lang" select="//resume/@lang"/>
  <xsl:variable name="messages" select="xalan:nodeset(document(concat('../resources/messages_',$lang,'.xml')))"/>

 <xsl:template name="insertBreaks">
   <xsl:param name="pText"/>

   <xsl:choose>
     <xsl:when test="not(contains($pText, '&#xA;'))">
       <xsl:copy-of select="$pText"/>
     </xsl:when>
     <xsl:otherwise>
       <xsl:value-of select="substring-before($pText, '&#xA;')"/>
       <br />
       <xsl:call-template name="insertBreaks">
         <xsl:with-param name="pText" select="substring-after($pText, '&#xA;')"/>
       </xsl:call-template>
     </xsl:otherwise>
   </xsl:choose>
 </xsl:template>

  <xsl:template name="i18n">
  	<xsl:param name="key"/>
  	<xsl:choose>
  		<xsl:when test="count($messages//message[@key = $key]) = 1">
			<xsl:value-of select="$messages//message[@key = $key]"/>
		</xsl:when>
		<xsl:otherwise>
			<xsl:value-of select="$key"/>
		</xsl:otherwise>
	</xsl:choose>
  </xsl:template>

  <xsl:template name="displaySingle">
  	<xsl:call-template name="DrawRow">
  		<xsl:with-param name="labelKey" select="name()"/>
  		<xsl:with-param name="value"><xsl:value-of select="."/></xsl:with-param>
	</xsl:call-template>
  </xsl:template>

  <xsl:template name="displayGroup">
  	<xsl:call-template name="DrawGroup">
  		<xsl:with-param name="labelKey" select="name()"/>
	</xsl:call-template>
  </xsl:template>

</xsl:stylesheet>